<!DOCTYPE html>
<html>
<head>
  <meta charset="UTF-8">
  <title>Document</title>
  <style>
    
  </style>
</head>
<body>
  
</body>
<script>

  // 功能
  // 参数
  // 返回值
  // 是否改变原数组

  // - arr.push()
  // 末尾新增
  // 要新增的数据
  // 新增后的长度
  // 是
  // var arr = ["hello", 4,5,6, "world"];
  // console.log(arr);
  // var res = arr.push(true, [123, "hahah"], 2+3);
  // console.log(res);
  // console.log(arr);

  // - arr.pop()
  // 末尾删除
  // 无参数
  // 删除了的数据
  // 是
  // var arr = ["hello", 4,5,6, "world"];
  // console.log(arr);
  // var res = arr.pop();
  // console.log(res);
  // console.log(arr);

  // - arr.unshift()
  // 开头新增
  // 要新增的数据
  // 新增后的长度
  // 是
  // var arr = ["hello", 4,5,6, "world"];
  // console.log(arr);
  // var res = arr.unshift("abc",123);
  // console.log(res);
  // console.log(arr);

  // - arr.shift()
  // 首位删除
  // 无参数
  // 删除了的数据
  // 是
  // var arr = ["hello", 4,5,6, "world"];
  // console.log(arr);
  // var res = arr.shift();
  // console.log(res);
  // console.log(arr);

  // - arr.splice()
  // 删除指定并替换
  // 参数1：开始删除的位置；参数2：要删除的个数；参数3~：要插入的新数据
  // 删除了的数据
  // 是
  // var arr = ["hello", 4,5,6, "world"];
  // console.log(arr);
  // var res = arr.splice(2);
  // var res = arr.splice(2, 2);
  // var res = arr.splice(2, 2, "abc");
  // var res = arr.splice(2, 2, "abc", "qwe", 123);
  // console.log(res);
  // console.log(arr);
  // console.log(res === arr);
  
  
  // - arr.slice()
  // 截取
  // 参数1：开始截取的索引；参数2：截取到的索引（不含）
  // 截取出来的新数组
  // 否
  // var arr = ["hello", 4,5,6, "world"];
  // console.log(arr);
  // var res = arr.slice();
  // var res = arr.slice(2);
  // var res = arr.slice(2, 4);
  // console.log(res);
  // console.log(arr);
  // console.log(res === arr);

  // - arr.reverse()
  // 翻转数组
  // 无参数
  // 翻转之后的老数组
  // 是
  // var arr = ["hello", 4,5,6, "world"];
  // console.log(arr);
  // var res = arr.reverse();
  // console.log(res);
  // console.log(arr);
  // console.log(res === arr);  
  
  // - arr.join()
  // 按照指定字符连接数组中的数据成字符
  // 连接符，字符形式
  // 连接之后的字符
  // 否
  // var arr = ["hello", 4,5,6, "world"];
  // console.log(arr);
  // var res = arr.join();
  // var res = arr.join("");
  // var res = arr.join("-");
  // console.log(res);
  // console.log(arr);
  // console.log(res === arr);
  
  
  // - arr.concat()
  // 合并
  // 要合并的数据（如果是数组的话，可以解析一层）
  // 合并之后的新数组
  // 否
  // var arr = ["hello", 4,5,6, "world"];
  // console.log(arr);
  // var res = arr.concat("abc");
  // var res = arr.concat("abc", ["qwe", 123]);
  // var res = arr.concat("abc", ["qwe", [123]]);
  // console.log(res);
  // console.log(arr);
  // console.log(res === arr);

  // - arr.sort()
  // 排序，默认的排序规则：字符的比较规则
  // 回调函数，这个回调函数自带两个形参，要求回调函数必须返回两个形参之差
    // 此时可以将排序规则改变为数值的比较规则
  // 排序之后的老数组
  // 是
  // var arr = [ 35, 52, 16, 78, 102, 9 ];
  // console.log(arr);
  // var res = arr.sort();
  // var res = arr.sort( function(a, b){
  //   return b-a;
  // } );
  // console.log(res);
  // console.log(arr);
  // console.log(res === arr);

  
</script>
</html>